Skip to content

Fix admin UI not using full vertical space on mobile (WWT-40)#47

Merged
PeterRounce merged 1 commit into
mainfrom
peter/wwt-40-admin-screen-doesnt-use-all-vertical-space
Jul 2, 2026
Merged

Fix admin UI not using full vertical space on mobile (WWT-40)#47
PeterRounce merged 1 commit into
mainfrom
peter/wwt-40-admin-screen-doesnt-use-all-vertical-space

Conversation

@PeterRounce

Copy link
Copy Markdown
Member

WWT-40 — Admin screen doesn't use all vertical space

Reported by Rob on an Android Pixel (Chrome). The admin screen (screenshot was the Card Detail page) left a large empty region at the bottom and clipped the lower card.

Root cause

The app shell is sized with h-screen (height: 100vh). On Android Chrome, 100vh doesn't track the dynamic browser toolbar, so the shell rendered shorter than the visible viewport — leaving dead space at the bottom and, because <main> is the scroll container, clipping the Lightning-Address / QR card.

Fix

Replace static viewport-height units with dynamic ones so the layout always fills the true visible viewport:

File Change
admin-ui/src/components/app-shell.tsx h-screenh-dvh (the reported bug)
admin-ui/src/App.tsx auth-loading splash & error boundary h-screenh-dvh
admin-ui/src/pages/login.tsx min-h-screenmin-h-dvh
admin-ui/src/pages/register.tsx min-h-screenmin-h-dvh

dvh (dynamic viewport height) is supported on all evergreen browsers including Pixel Chrome; Tailwind v4 emits h-dvh/min-h-dvh natively. No remaining h-screen/min-h-screen/100vh in the SPA.

Verification

  • npm run build (tsc typecheck + vite) passes; built CSS contains .h-dvh { height: 100dvh } and .min-h-dvh.
  • Final visual confirmation should be done on an actual Android phone against the test site — headless Chromium can't reproduce the dynamic-toolbar behavior.

Version bumped 0.22.40.22.5 (PATCH).

🤖 Generated with Claude Code

The admin app shell was sized with `h-screen` (`height: 100vh`). On
Android Chrome `100vh` does not track the dynamic browser toolbar, so
the shell rendered shorter than the visible viewport — leaving a large
empty region at the bottom of the screen and clipping content (e.g. the
Lightning Address / QR card on the Card Detail page, per the report).

Switch the full-height layout roots from static viewport-height units to
dynamic ones so the layout always fills the actual visible viewport:

- app-shell.tsx: `h-screen` -> `h-dvh` (the reported bug)
- App.tsx: auth-loading splash and error boundary `h-screen` -> `h-dvh`
- login.tsx / register.tsx: `min-h-screen` -> `min-h-dvh`

`dvh` (dynamic viewport height) is supported on all evergreen browsers
including Pixel Chrome; Tailwind v4 emits the utilities natively.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@PeterRounce PeterRounce merged commit 840e2ec into main Jul 2, 2026
9 checks passed
@PeterRounce PeterRounce deleted the peter/wwt-40-admin-screen-doesnt-use-all-vertical-space branch July 2, 2026 15:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant